Skip to content

Heads-threat-model: per-board TPM GPIO reset protection table, NV4x ADL-P CONFIRMED, flash guides - #224

Merged
tlaurion merged 5 commits into
linuxboot:masterfrom
tlaurion:doc/tpm-gpio-vuln
Jul 31, 2026
Merged

Heads-threat-model: per-board TPM GPIO reset protection table, NV4x ADL-P CONFIRMED, flash guides#224
tlaurion merged 5 commits into
linuxboot:masterfrom
tlaurion:doc/tpm-gpio-vuln

Conversation

@tlaurion

@tlaurion tlaurion commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Heads Threat Model -- Per-Board Protection Table

  • Per-board protection status for all 20 boards. NV4x ADL-P (0x5182) now CONFIRMED vulnerable.
  • NF1 mode confirmed, PCRs cleared to zero via GPIO PLTRST# assertion.
  • NS50 (same PCH 0x5182) expected identical.
  • Per-board TPM GPIO reset protection status for all boards.
  • KBL-R vs Whiskey Lake comparison, QSB-107 context, Intel doc 834810 reference.
  • Preview: https://tlaurion.github.io/heads-wiki/Heads-threat-model/

RecoveryShell

  • TPM GPIO vulnerability testing tools: tpm-gpio-detect and tpm-gpio-assert.
  • Commands and usage for community testers.

SPI Programmer Best Practices

20 Board Flashing Guides

Copilot AI review requested due to automatic review settings July 24, 2026 21:06

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@tlaurion tlaurion changed the title Heads-threat-model: per-board protection table; restructure with H2/H3 hierarchy; embed 149 hyperlinks; add CVE timeline and ME/AMT video Heads-threat-model: per-board TPM GPIO reset protection table; restructure with H2/H3 hierarchy; embed 149 hyperlinks; add CVE timeline and ME/AMT video. Uniformize and add missing boards flashing guides Jul 25, 2026

@Thrilleratplay Thrilleratplay left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel "read twice" is not enough of a safe guard to ensure a user has a valid backup.

Other than that, looks good to me.

Comment thread About/Heads-threat-model.md
Comment thread Installing-and-Configuring/Flashing-Guides/T430-maximized.md Outdated
@tlaurion
tlaurion force-pushed the doc/tpm-gpio-vuln branch 2 times, most recently from 0be854e to 8279fa0 Compare July 29, 2026 21:03
@gaspar-ilom

Copy link
Copy Markdown

lgtm. looks like a lot of work went into this.

@gaspar-ilom

Copy link
Copy Markdown

lgtm

@tlaurion
tlaurion force-pushed the doc/tpm-gpio-vuln branch 2 times, most recently from 3809638 to c35a03a Compare July 31, 2026 02:31
@tlaurion tlaurion changed the title Heads-threat-model: per-board TPM GPIO reset protection table; restructure with H2/H3 hierarchy; embed 149 hyperlinks; add CVE timeline and ME/AMT video. Uniformize and add missing boards flashing guides Heads-threat-model: per-board TPM GPIO reset protection table, NV4x ADL-P CONFIRMED, flash guides Jul 31, 2026
@tlaurion
tlaurion force-pushed the doc/tpm-gpio-vuln branch 2 times, most recently from 94585a6 to 77f5026 Compare July 31, 2026 04:20
@tlaurion
tlaurion marked this pull request as draft July 31, 2026 04:59
@tlaurion
tlaurion marked this pull request as ready for review July 31, 2026 04:59
@tlaurion

tlaurion commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator Author

@Thrilleratplay @gaspar-ilom last review before merge please, conjointly to linuxboot/heads#2165

@Thrilleratplay Thrilleratplay left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. The links add a lot of context to someone not familiar with the ecosystem.

@tlaurion
tlaurion force-pushed the doc/tpm-gpio-vuln branch 2 times, most recently from 548db45 to 03fe8ea Compare July 31, 2026 20:49
tlaurion added 5 commits July 31, 2026 16:54
…PIO reset vulnerability

- Restructure page into H2/H3 hierarchy covering the TPM GPIO reset
  vulnerability (coreboot bug #576), per-board protection status,
  threat model, countermeasures and CPU microcode mitigation status
- Add per-board table with emoji status markers (✅ Protected,
  ❌ Not protected, ❌ CONFIRMED vulnerable, ⚠️ EOL/ESU) for quick
  visual scanning; rows sorted alphabetically by board name
- Mark NV4x ADL-P and NitroPad NS50 (PCH 0x5182) as CONFIRMED
  vulnerable: NF1 mode confirmed, PCRs cleared to zero via GPIO
  PLTRST# assertion on NV4x hardware; NS50 shares the same PCH
- Document that TPM DUK with passphrase is not affected on any board

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
- Add consistent status headings to every board guide: microcode
  servicing status (✅ Active / ⚠️ EOL), TPM GPIO reset status
  (✅ PROTECTED / 🛡️ INCONCLUSIVE / 🛡️ VULNERABLE), Safety First,
  Disassembly and Flashing sections
- Standardize backup language: create and verify at least two
  full-chip backups before any write operation
- Use [flasher]/[programmer] placeholders and uniform wording
  across all guides

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
… and tpm-gpio-assert tools

- Document the TPM GPIO reset vulnerability (Kukri, 2024) and how
  the PLTRST# pin can be reprogrammed to GPIO mode on Skylake+
- Add usage for the initrd audit tools: tpm-gpio-detect (non-
  destructive lock status audit) and tpm-gpio-assert (destructive
  PLTRST# assertion), with output saved to /media for reporting
- Point to the extended tpm-gpio-fail fork for per-platform status

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
- Fix inconsistent 'Coreboot' capitalization to the project's
  canonical lowercase 'coreboot' spelling in Community.md,
  index.md and Prerequisites.md

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
@tlaurion
tlaurion force-pushed the doc/tpm-gpio-vuln branch from 03fe8ea to 46fe46b Compare July 31, 2026 20:55
@tlaurion
tlaurion merged commit 362759c into linuxboot:master Jul 31, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GPIO locking is broken on Kaby Lake and possibly other platforms

4 participants